Skip to content

fix(desktop): classify timeline prepends so history loads don't bump unread#1416

Merged
wesbillman merged 1 commit into
mainfrom
pinky/e2e-scroll-contract
Jul 2, 2026
Merged

fix(desktop): classify timeline prepends so history loads don't bump unread#1416
wesbillman merged 1 commit into
mainfrom
pinky/e2e-scroll-contract

Conversation

@wesbillman

@wesbillman wesbillman commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • classify timeline message deltas by membership (classifyTimelineMessageDelta) so older-history prepends are distinct from latest-message appends
  • use that prepend classification in useAnchoredScroll so older history does not increment the new-message affordance

Rebased on main; the earlier persona-env-vars.spec.ts hardening was dropped because main already landed an equivalent selectDropdownOption helper in #1396.

Validation

  • cd desktop && pnpm build
  • cd desktop && node --import ./test-loader.mjs --experimental-strip-types --test src/features/messages/lib/timelineSnapshot.test.mjs (44/44)
  • cd desktop && pnpm exec playwright test --project=smoke tests/e2e/scroll-history.spec.ts -g "older-history prepend keeps" --repeat-each=5

Note: the "older-history prepend keeps the reading row fixed" spec is flaky locally on unmodified origin/main as well (2/5 failures there vs 1/5 on this branch, timeout in initial waitForFunction), so that flake is pre-existing and not addressed here.

@wesbillman wesbillman force-pushed the pinky/e2e-scroll-contract branch from 6e9119b to 5deaeb6 Compare July 1, 2026 00:38
…unread

Treat timeline prepends as a distinct message delta so older-history pages do
not look like new unread arrivals when the newest row is unchanged.

Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
@wesbillman wesbillman force-pushed the pinky/e2e-scroll-contract branch from 5deaeb6 to 5350f04 Compare July 1, 2026 22:44
@wesbillman wesbillman changed the title fix(desktop): harden e2e scroll and persona menu checks fix(desktop): classify timeline prepends so history loads don't bump unread Jul 1, 2026
@wesbillman wesbillman merged commit 9967b97 into main Jul 2, 2026
25 checks passed
@wesbillman wesbillman deleted the pinky/e2e-scroll-contract branch July 2, 2026 14:49
wpfleger96 added a commit that referenced this pull request Jul 2, 2026
readiness.rs grew by 1 line (cargo fmt reformatted two long closures
inline after rebase). tauri.ts grew by 26 lines from PRs that landed
on main (#1452, #1416, #1449 and others) between our prior base and
this rebase tip (e42dae3).

Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant